package daily.play1;

import com.sun.jdi.IntegerType;

import java.util.*;

//public class demo9 {
//    public static void main(String[] args){
//        LinkedHashMap<String,String> map = new LinkedHashMap<>();
//        map.put("1","-1");
//        map.put("4","-4");
//        map.put("2","-2");
//        map.put("3","-3");
//
//        System.out.println(map);
//        Set<String> set = map.keySet();
//        迭代器遍历方式
//        Iterator it = set.iterator();
//        while(it.hasNext()){
//            String s = (String) it.next();
//            System.out.println(map.get(s));
//        }
//        增强for遍历
//        for(String s:set){
//            System.out.println(map.get(s));
//        }
//        使用键值对对象遍历
//        增强for
//        Set<Map.Entry<String,String>> set = map.entrySet();
//        for(Map.Entry<String,String> s : set){
//            System.out.println(s.getKey());
//            System.out.println(s.getValue());
//        }
//        迭代器
//        Set<Map.Entry<String,String>> set = map.entrySet();
//        Iterator<Map.Entry<String,String>> it = set.iterator();
//        while(it.hasNext()){
//            Map.Entry<String,String> m = it.next();
//            System.out.println(m.getKey());
//            System.out.println(m.getValue());
//        }
//        String str1 = new String("你好");
//        String str2 = new String("你好");
//        System.out.println(str1.hashCode());
//        System.out.println(str2.hashCode());
//        System.out.println(str1==str2);
//    }
//}
//class student{
//    public String name;
//    public int age;
//
//
//    public student(String name,int age){
//        this.name = name;
//        this.age = age;
//    }
//    @Override
//    public boolean equals(Object o) {
//        if (this == o) return true;
//        if (!(o instanceof student student)) return false;
//        return age == student.age && Objects.equals(name, student.name);
//    }
//
//    @Override
//    public int hashCode() {
//        return Objects.hashCode(name);
//    }
//
//    @Override
//    public String toString() {
//        return "name=" + name + " "+
//                ", age=" + age ;
//    }
//}
//public class demo9{
//    public static void main(String[] args){
//        HashMap<student,String> map = new HashMap<>();
//        student stu1 = new student("张三",18);
//        student stu2 = new student("李四",19);
//        student stu3 = new student("王五",20);
//        student stu4 = new student("王五",20);
//        map.put(stu1,"河南");
//        map.put(stu2,"河南");
//        map.put(stu4,"河南");
//        map.put(stu4,"河北");
//        Set<Map.Entry<student,String>> set = map.entrySet();
//        for(Map.Entry<student,String> s: set){
//            System.out.println(s.getKey());
//            System.out.println(s.getValue());
//        }
//        Set<student> set2 = map.keySet();
//        Iterator it = set2.iterator();
//        while(it.hasNext()){
//            String s = map.get((student)it.next());
//            System.out.println(s);
//        }
//    }
//}


//public class demo9{
//    public static void main(String [] args){
//        String  [] arr = {"A","B","C","D"};
//        //投票结果
//        ArrayList<String> list = new ArrayList<>();
//        Random ran = new Random();
//        for (int i = 0; i < 80; i++) {
//            int index = ran.nextInt(arr.length);
//            list.add(arr[index]);
//        }
//        //统计投票结果
//        HashMap<String,Integer> map = new HashMap<>();
//        for(String s:list){
//            if(!map.containsKey(s)){
//                //之前没有出现
//                map.put(s,1);
//            }else {
//                //之前出现过
//                int count = map.get(s);
//                count++;
//                map.put(s,count);
//            }
//        }
//        //查看各个地方的投票情况
//        Set<String> ss = map.keySet();
//        for(String ssss:ss){
//            System.out.println(ssss+":"+map.get(ssss));
//        }
//        //查看票数最多的
//        Set<Map.Entry<String,Integer>> sss = map.entrySet();
//        int max = 0;
//      for(Map.Entry<String,Integer> mmm : sss){
//          if(mmm.getValue()>max){
//              max = mmm.getValue();
//          }
//      }
//      //打印出来所有数量最多的地方
//        for(Map.Entry<String, Integer> mmm: sss){
//            if(mmm.getValue()==max){
//                System.out.println(mmm.getKey());
//            }
//        }
//    }
//}

//treemap从小到大
//public class demo9{
//    public static void main(String[] arga){
//        TreeMap<Integer,String> tree = new TreeMap<>();
//        tree.put(1,"鼠标");
//        tree.put(2,"电池");
//        tree.put(3,"水杯");
//        tree.put(4,"书籍");
//        System.out.println(tree);
//    }
//}

//treemap从大到小
//public class demo9{
//    public static void main(String[] arga){
//        TreeMap<Integer,String> tree = new TreeMap<>(new Comparator<Integer>() {
//            @Override
//            public int compare(Integer o1, Integer o2) {
//                return o2-o1;
//            }
//        });
//        tree.put(1,"鼠标");
//        tree.put(2,"电池");
//        tree.put(3,"水杯");
//        tree.put(4,"书籍");
//        System.out.println(tree);
//    }
//}

//class student implements Comparable{
//    public String name;
//    public int age;
//
//    public student(String name,int age){
//        this.name = name;
//        this.age = age;
//    }
//    @Override
//    public String toString() {
//        return "student{" +
//                "name='" + name + '\'' +
//                ", age=" + age +
//                '}';
//    }
//
//    @Override
//    public int compareTo(Object o) {
//        student s = (student) o;
//        if(this.age!=s.age){
//            return this.age-s.age;
//        }
//        return name.compareTo(s.name);
//    }
//}
//
//
//public class demo9{
//    public static void main(String[] arga){
//        student stu1  = new student("张三",18);
//        student stu2  = new student("李四",29);
//        student stu3  = new student("王五",15);
//        student stu4  = new student("赵六",13);
//        student stu5  = new student("赵七",13);
//        TreeMap<student,String> tree = new TreeMap<>();
//        tree.put(stu1,"河南");
//        tree.put(stu2,"河南");
//        tree.put(stu3,"河北");
//        tree.put(stu4,"江苏");
//        tree.put(stu5,"广州");
//        System.out.println(tree);
//        System.out.println("赵六".compareTo("赵七"));
//    }
//}

